package com.hy.service;

import com.hy.appbase.page.PageResult;
import com.hy.bo.input.GazetteerAddBo;
import com.hy.bo.query.GazetteerQueryBo;
import com.hy.bo.result.GazetteerRetBo;
import com.hy.bo.result.GazetteerTreeRetBo;
import com.hy.model.Gazetteer;
import com.hy.model.GazetteerNode;

import java.util.List;

public interface IGazetteerService {

	/**
	 * 根据主键查询名录信息
	 * @param id
	 * @return
	 */
	public GazetteerRetBo getGazetteerById(String id);

	/**
	 * 保存名录信息
	 *
	 * @param gazetteerAddBo
	 * @return
	 */
	public GazetteerRetBo saveGazetteer(GazetteerAddBo gazetteerAddBo);

	/**
	 * 删除名录信息
	 *
	 * @param guid
	 */
	public void deleteGazetteer(String guid);

	/**
	 *
	 * 分页
	 *
	 * @param gazetteerQueryBo
	 * @return
	 */
	public PageResult<GazetteerRetBo> page(GazetteerQueryBo gazetteerQueryBo);

	/**
	 *
	 * 列表
	 *
	 * @param gazetteerQueryBo
	 * @return
	 */
	public List<Gazetteer> list(GazetteerQueryBo gazetteerQueryBo);

	/**
	 *
	 * @return
	 */
	public GazetteerTreeRetBo findAllGazetteerNode();
}
